|
In computer vision triangulation refers to the process of determining a point in 3D space given its projections onto two, or more, images. In order to solve this problem it is necessary to know the parameters of the camera projection function from 3D to 2D for the cameras involved, in the simplest case represented by the camera matrices. Triangulation is sometimes also referred to as reconstruction. The triangulation problem is in theory trivial. Since each point in an image corresponds to a line in 3D space, all points on the line are projected to the point in the image. If a pair of corresponding points in two, or more images, can be found it must be the case that they are the projection of a common 3D point x. The set of lines generated by the image points must intersect at x and the algebraic formulation of the coordinates of x can be computed in a variety of ways, as is presented below. In practice, however, the coordinates of image points cannot be measured with arbitrary accuracy. Instead, various types of noise, such as geometric noise from lens distortion or interest point detection error, lead to inaccuracies in the measured image coordinates. As a consequence, the lines generated by the corresponding image points do not always intersect in 3D space. The problem, then, is to find a 3D point which optimally fits the measured image points. In the literature there are multiple proposals for how to define optimality and how to find the optimal 3D point. Since they are based on different optimality criteria, the various methods produce different estimates of the 3D point x when noise is involved. == Introduction == In the following, it is assumed that triangulation is made on corresponding image points from two views generated by pinhole cameras. Generalization from these assumptions are discussed here. The image to the left illustrates the epipolar geometry of a pair of stereo cameras of pinhole model. A point x in 3D space is projected onto the respective image plane along a line (green) which goes through the camera's focal point, and , resulting in the two corresponding image points and . If and are given and the geometry of the two cameras are known, the two projection lines can be determined and it must be the case that they intersect at point x. Using basic linear algebra that intersection point can be determined in a straightforward way. The image to the right shows the real case. The position of the image points and cannot be measured exactly. The reason is a combination of factors such as * Geometric distortion, for example lens distortion, which means that the 3D to 2D mapping of the camera deviates from the pinhole camera model. To some extent these errors can be compensated for, leaving a residual geometric error. * A single ray of light from x is dispersed in the lens system of the cameras according to a point spread function. The recovery of the corresponding image point from measurements of the dispersed intensity function in the images gives errors. * In digital camera the image intensity function is only measured in discrete sensor elements. Inexact interpolation of the discrete intensity function have to be used to recover the true one. * The image points used for triangulation are often found using various types of feature extractors, for example of corners or interest points in general. There is an inherent localization error for any type of feature extraction based on neighborhood operations. As a consequence, the measured image points are and instead of and . However, their projection lines (blue) do not have to intersect in 3D space or come close to x. In fact, these lines intersect if and only if and satisfy the epipolar constraint defined by the fundamental matrix. Given the measurement noise in and it is rather likely that the epipolar constraint is not satisfied and the projection lines do not intersect. This observation leads to the problem which is solved in triangulation. Which 3D point xest is the best estimate of x given and and the geometry of the cameras? The answer is often found by defining an error measure which depends on xest and then minimize this error. In the following some of the various methods for computing xest presented in the literature are briefly described. All triangulation methods produce xest = x in the case that and , that is, when the epipolar constraint is satisfied (except for singular points, see below). It is what happens when the constraint is not satisfied which differs between the methods. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Triangulation (computer vision)」の詳細全文を読む スポンサード リンク
|